# range(start, end, [sep=1])，生成一个等差数列
print(list(range(10)))  # end
print(list(range(1, 10)))  # start, end
print(list(range(1, 10, 2)))  # start, end, step

# 高斯求和
total = 0
for i in range(100, 1001):  # 步长默认是1
    total += i
print(total)

# 水仙花数：三位数  每一位数字的立方和 = 三位数本身（153 = 1^3 + 5^3 + 3^3）
# 求100到1000以内的水仙花数
for i in range(100, 1000):
    a = i % 10  # 个位
    b = i // 10 % 10  # 十位
    c = i // 100  # 百位
    if i == a ** 3 + b ** 3 + c ** 3:
        print(i)

for i in range(100, 1000):
    s = str(i)
    a = s[2]  # 个位
    b = s[1]  # 十位
    c = s[0]  # 百位
    if i == int(a) ** 3 + int(b) ** 3 + int(c) ** 3:
        print(i)